package com.wlr.study.pointsword;

import java.util.HashSet;

/**
 * 数组中重复的数字
 * 找出数组中重复的数字。
 * <p>
 * <p>
 * 在一个长度为 n 的数组 nums 里的所有数字都在 0～n-1 的范围内。
 * 数组中某些数字是重复的，但不知道有几个数字重复了，也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。
 *
 * @author lrwang
 * @version 1.0
 * @date 2022/3/30 17:28
 */
public class Offer03 {
    public static int findRepeatNumber(int[] nums) {
        HashSet<Integer> set=new HashSet<>();
        for (Integer num:nums){
            if (!set.add(num)){
                return num;
            }
        }
        return -1;
    }

    public static void main(String[] args) {
        int[] ints = new int[]{2, 3, 1, 0, 2, 5, 3};
        System.out.println(Offer03.findRepeatNumber(ints));
    }
}
